<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Doxygen: pcl::TrajkovicKeypoint3D&lt; PointInT, PointOutT, NormalT &gt; 模板类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Doxygen
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classpcl_1_1_trajkovic_keypoint3_d.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public 类型</a> &#124;
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pro-methods">Protected 成员函数</a> &#124;
<a href="#pri-methods">Private 成员函数</a> &#124;
<a href="#pri-attribs">Private 属性</a> &#124;
<a href="classpcl_1_1_trajkovic_keypoint3_d-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">pcl::TrajkovicKeypoint3D&lt; PointInT, PointOutT, NormalT &gt; 模板类 参考</div>  </div>
</div><!--header-->
<div class="contents">

<p><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html" title="TrajkovicKeypoint3D implements Trajkovic and Hedley corner detector on point cloud using geometric in...">TrajkovicKeypoint3D</a> implements Trajkovic and Hedley corner detector on point cloud using geometric information. It uses first order statistics to find variation of normals. This work is part of Nizar Sallem PhD thesis.  
 <a href="classpcl_1_1_trajkovic_keypoint3_d.html#details">更多...</a></p>

<p><code>#include &lt;<a class="el" href="trajkovic__3d_8h_source.html">trajkovic_3d.h</a>&gt;</code></p>
<div class="dynheader">
类 pcl::TrajkovicKeypoint3D&lt; PointInT, PointOutT, NormalT &gt; 继承关系图:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classpcl_1_1_trajkovic_keypoint3_d.png" usemap="#pcl::TrajkovicKeypoint3D_3C_20PointInT_2C_20PointOutT_2C_20NormalT_20_3E_map" alt=""/>
  <map id="pcl::TrajkovicKeypoint3D_3C_20PointInT_2C_20PointOutT_2C_20NormalT_20_3E_map" name="pcl::TrajkovicKeypoint3D_3C_20PointInT_2C_20PointOutT_2C_20NormalT_20_3E_map">
<area href="classpcl_1_1_keypoint.html" title="Keypoint represents the base class for key points." alt="pcl::Keypoint&lt; PointInT, PointOutT &gt;" shape="rect" coords="0,56,341,80"/>
<area href="classpcl_1_1_p_c_l_base.html" alt="pcl::PCLBase&lt; PointInT &gt;" shape="rect" coords="0,0,341,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public 类型</h2></td></tr>
<tr class="memitem:a70ecee253f4791fa2276bdde4be1721e"><td class="memItemLeft" align="right" valign="top"><a id="a70ecee253f4791fa2276bdde4be1721e"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>ComputationMethod</b> { <b>FOUR_CORNERS</b>
, <b>EIGHT_CORNERS</b>
 }</td></tr>
<tr class="separator:a70ecee253f4791fa2276bdde4be1721e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7439c70bd2c83a996e7be6a4d77da931"><td class="memItemLeft" align="right" valign="top"><a id="a7439c70bd2c83a996e7be6a4d77da931"></a>
typedef boost::shared_ptr&lt; <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr class="separator:a7439c70bd2c83a996e7be6a4d77da931"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba4a4a7b4ee587f2787320167fa5806c"><td class="memItemLeft" align="right" valign="top"><a id="aba4a4a7b4ee587f2787320167fa5806c"></a>
typedef boost::shared_ptr&lt; const <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ConstPtr</b></td></tr>
<tr class="separator:aba4a4a7b4ee587f2787320167fa5806c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5657edd045461bd3072dd3d9e3d1d73"><td class="memItemLeft" align="right" valign="top"><a id="aa5657edd045461bd3072dd3d9e3d1d73"></a>
typedef <a class="el" href="classpcl_1_1_keypoint.html">Keypoint</a>&lt; PointInT, PointOutT &gt;::<a class="el" href="classpcl_1_1_point_cloud.html">PointCloudIn</a>&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudIn</b></td></tr>
<tr class="separator:aa5657edd045461bd3072dd3d9e3d1d73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a708050765a555867c6237b031699b1be"><td class="memItemLeft" align="right" valign="top"><a id="a708050765a555867c6237b031699b1be"></a>
typedef <a class="el" href="classpcl_1_1_keypoint.html">Keypoint</a>&lt; PointInT, PointOutT &gt;::<a class="el" href="classpcl_1_1_point_cloud.html">PointCloudOut</a>&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudOut</b></td></tr>
<tr class="separator:a708050765a555867c6237b031699b1be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a796d0cc8a21dc049d0c0bf880baeb03f"><td class="memItemLeft" align="right" valign="top"><a id="a796d0cc8a21dc049d0c0bf880baeb03f"></a>
typedef PointCloudIn::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudInConstPtr</b></td></tr>
<tr class="separator:a796d0cc8a21dc049d0c0bf880baeb03f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7af00874cf6357b03e65f5db4b0975c"><td class="memItemLeft" align="right" valign="top"><a id="ae7af00874cf6357b03e65f5db4b0975c"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Normals</b></td></tr>
<tr class="separator:ae7af00874cf6357b03e65f5db4b0975c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8e94fd021fc20439b44ee044b71c764"><td class="memItemLeft" align="right" valign="top"><a id="af8e94fd021fc20439b44ee044b71c764"></a>
typedef Normals::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>NormalsPtr</b></td></tr>
<tr class="separator:af8e94fd021fc20439b44ee044b71c764"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07d2afbce9c9a256dddf9d290a836f38"><td class="memItemLeft" align="right" valign="top"><a id="a07d2afbce9c9a256dddf9d290a836f38"></a>
typedef Normals::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>NormalsConstPtr</b></td></tr>
<tr class="separator:a07d2afbce9c9a256dddf9d290a836f38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpcl_1_1_keypoint"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpcl_1_1_keypoint')"><img src="closed.png" alt="-"/>&#160;Public 类型 继承自 <a class="el" href="classpcl_1_1_keypoint.html">pcl::Keypoint&lt; PointInT, PointOutT &gt;</a></td></tr>
<tr class="memitem:ad0fa140c6038e3708a7ef652e5c74caa inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="ad0fa140c6038e3708a7ef652e5c74caa"></a>
typedef boost::shared_ptr&lt; <a class="el" href="classpcl_1_1_keypoint.html">Keypoint</a>&lt; PointInT, PointOutT &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr class="separator:ad0fa140c6038e3708a7ef652e5c74caa inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6d8033d4e3165919da69c0dfeecb8ae inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="ab6d8033d4e3165919da69c0dfeecb8ae"></a>
typedef boost::shared_ptr&lt; const <a class="el" href="classpcl_1_1_keypoint.html">Keypoint</a>&lt; PointInT, PointOutT &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ConstPtr</b></td></tr>
<tr class="separator:ab6d8033d4e3165919da69c0dfeecb8ae inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9eef8be22b648faf7529a03808165cc9 inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a9eef8be22b648faf7529a03808165cc9"></a>
typedef <a class="el" href="classpcl_1_1_p_c_l_base.html">PCLBase</a>&lt; PointInT &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>BaseClass</b></td></tr>
<tr class="separator:a9eef8be22b648faf7529a03808165cc9 inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54c9e8e5960a91c46a9a1fff3eb7ed1f inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a54c9e8e5960a91c46a9a1fff3eb7ed1f"></a>
typedef <a class="el" href="classpcl_1_1search_1_1_search.html">pcl::search::Search</a>&lt; PointInT &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>KdTree</b></td></tr>
<tr class="separator:a54c9e8e5960a91c46a9a1fff3eb7ed1f inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7da3079345edc3d3684157309a1e47dd inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a7da3079345edc3d3684157309a1e47dd"></a>
typedef <a class="el" href="classpcl_1_1search_1_1_search.html">pcl::search::Search</a>&lt; PointInT &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>KdTreePtr</b></td></tr>
<tr class="separator:a7da3079345edc3d3684157309a1e47dd inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac291ff32e78639931cab1113e69a456b inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="ac291ff32e78639931cab1113e69a456b"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; PointInT &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudIn</b></td></tr>
<tr class="separator:ac291ff32e78639931cab1113e69a456b inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e0ec17665234d8f2c30a143222a8eee inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a2e0ec17665234d8f2c30a143222a8eee"></a>
typedef PointCloudIn::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudInPtr</b></td></tr>
<tr class="separator:a2e0ec17665234d8f2c30a143222a8eee inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a833ca03470dd4383a397e24214ea0709 inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a833ca03470dd4383a397e24214ea0709"></a>
typedef PointCloudIn::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudInConstPtr</b></td></tr>
<tr class="separator:a833ca03470dd4383a397e24214ea0709 inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a010e393d307e423828232fdd48781240 inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a010e393d307e423828232fdd48781240"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; PointOutT &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudOut</b></td></tr>
<tr class="separator:a010e393d307e423828232fdd48781240 inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25a67ec1b8bee8532d9e0947164d44ba inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a25a67ec1b8bee8532d9e0947164d44ba"></a>
typedef boost::function&lt; int(int, double, std::vector&lt; int &gt; &amp;, std::vector&lt; float &gt; &amp;)&gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SearchMethod</b></td></tr>
<tr class="separator:a25a67ec1b8bee8532d9e0947164d44ba inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac58660587c72beaf0068c4f4656484e6 inherit pub_types_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="ac58660587c72beaf0068c4f4656484e6"></a>
typedef boost::function&lt; int(const <a class="el" href="classpcl_1_1_point_cloud.html">PointCloudIn</a> &amp;cloud, int index, double, std::vector&lt; int &gt; &amp;, std::vector&lt; float &gt; &amp;)&gt;&#160;</td><td class="memItemRight" valign="bottom"><b>SearchMethodSurface</b></td></tr>
<tr class="separator:ac58660587c72beaf0068c4f4656484e6 inherit pub_types_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Public 类型 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointInT &gt;</a></td></tr>
<tr class="memitem:ae2f6f6863a73337858b7a7a054eaae4f inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ae2f6f6863a73337858b7a7a054eaae4f"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; PointInT &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:ae2f6f6863a73337858b7a7a054eaae4f inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab84dd662cda89edb882fe5307b2136ea inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ab84dd662cda89edb882fe5307b2136ea"></a>
typedef PointCloud::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudPtr</b></td></tr>
<tr class="separator:ab84dd662cda89edb882fe5307b2136ea inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8326513fad0680b6993e2f1a79a6af4 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ac8326513fad0680b6993e2f1a79a6af4"></a>
typedef PointCloud::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudConstPtr</b></td></tr>
<tr class="separator:ac8326513fad0680b6993e2f1a79a6af4 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae51eae0c7b3e0b7178f4894dff90660a inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ae51eae0c7b3e0b7178f4894dff90660a"></a>
typedef boost::shared_ptr&lt; <a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointIndicesPtr</b></td></tr>
<tr class="separator:ae51eae0c7b3e0b7178f4894dff90660a inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51771056fb4ab8c448a11157acbe2ee0 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a51771056fb4ab8c448a11157acbe2ee0"></a>
typedef boost::shared_ptr&lt; <a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> const &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointIndicesConstPtr</b></td></tr>
<tr class="separator:a51771056fb4ab8c448a11157acbe2ee0 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:aefa386fd88159bfe1a148b970162d692"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#aefa386fd88159bfe1a148b970162d692">TrajkovicKeypoint3D</a> (ComputationMethod method=FOUR_CORNERS, int window_size=3, float first_threshold=0.00046, float second_threshold=0.03589)</td></tr>
<tr class="memdesc:aefa386fd88159bfe1a148b970162d692"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor  <a href="classpcl_1_1_trajkovic_keypoint3_d.html#aefa386fd88159bfe1a148b970162d692">更多...</a><br /></td></tr>
<tr class="separator:aefa386fd88159bfe1a148b970162d692"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e13e945839333c59a9f44ade8639ed3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a4e13e945839333c59a9f44ade8639ed3">setMethod</a> (ComputationMethod method)</td></tr>
<tr class="memdesc:a4e13e945839333c59a9f44ade8639ed3"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the method of the response to be calculated.  <a href="classpcl_1_1_trajkovic_keypoint3_d.html#a4e13e945839333c59a9f44ade8639ed3">更多...</a><br /></td></tr>
<tr class="separator:a4e13e945839333c59a9f44ade8639ed3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d0b82ffc180ece57cc3d64cf42fd1cc"><td class="memItemLeft" align="right" valign="top">ComputationMethod&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a4d0b82ffc180ece57cc3d64cf42fd1cc">getMethod</a> () const</td></tr>
<tr class="separator:a4d0b82ffc180ece57cc3d64cf42fd1cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67da4df125904a731c5424df45ce4a0d"><td class="memItemLeft" align="right" valign="top"><a id="a67da4df125904a731c5424df45ce4a0d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a67da4df125904a731c5424df45ce4a0d">setWindowSize</a> (int window_size)</td></tr>
<tr class="memdesc:a67da4df125904a731c5424df45ce4a0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set window size <br /></td></tr>
<tr class="separator:a67da4df125904a731c5424df45ce4a0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a895f9468fd37a316502e53c7ad2ba791"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a895f9468fd37a316502e53c7ad2ba791">getWindowSize</a> () const</td></tr>
<tr class="separator:a895f9468fd37a316502e53c7ad2ba791"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28ea0a4dca5e3206d8dd94c9f8931f58"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a28ea0a4dca5e3206d8dd94c9f8931f58">setFirstThreshold</a> (float threshold)</td></tr>
<tr class="memdesc:a28ea0a4dca5e3206d8dd94c9f8931f58"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the first_threshold to reject corners in the simple cornerness computation stage.  <a href="classpcl_1_1_trajkovic_keypoint3_d.html#a28ea0a4dca5e3206d8dd94c9f8931f58">更多...</a><br /></td></tr>
<tr class="separator:a28ea0a4dca5e3206d8dd94c9f8931f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c9a062f761214d152c4c36cb6160b37"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a9c9a062f761214d152c4c36cb6160b37">getFirstThreshold</a> () const</td></tr>
<tr class="separator:a9c9a062f761214d152c4c36cb6160b37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefcd429705495432dc069f449faabf5a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#aefcd429705495432dc069f449faabf5a">setSecondThreshold</a> (float threshold)</td></tr>
<tr class="memdesc:aefcd429705495432dc069f449faabf5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the second threshold to reject corners in the final cornerness computation stage.  <a href="classpcl_1_1_trajkovic_keypoint3_d.html#aefcd429705495432dc069f449faabf5a">更多...</a><br /></td></tr>
<tr class="separator:aefcd429705495432dc069f449faabf5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69c6e0deea3bbe88dd4d2224d7ef42f2"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a69c6e0deea3bbe88dd4d2224d7ef42f2">getSecondThreshold</a> () const</td></tr>
<tr class="separator:a69c6e0deea3bbe88dd4d2224d7ef42f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf53e0403fb49781e05f46c7e5be09a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#adf53e0403fb49781e05f46c7e5be09a2">setNormals</a> (const NormalsConstPtr &amp;normals)</td></tr>
<tr class="memdesc:adf53e0403fb49781e05f46c7e5be09a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set normals if precalculated normals are available.  <a href="classpcl_1_1_trajkovic_keypoint3_d.html#adf53e0403fb49781e05f46c7e5be09a2">更多...</a><br /></td></tr>
<tr class="separator:adf53e0403fb49781e05f46c7e5be09a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bf8f3dad5c78f18578e676c72feee5c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a0bf8f3dad5c78f18578e676c72feee5c">getNormals</a> () const</td></tr>
<tr class="separator:a0bf8f3dad5c78f18578e676c72feee5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88309e9dc62caf7fea6fb429603399b5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a88309e9dc62caf7fea6fb429603399b5">setNumberOfThreads</a> (unsigned int nr_threads=0)</td></tr>
<tr class="memdesc:a88309e9dc62caf7fea6fb429603399b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the scheduler and set the number of threads to use.  <a href="classpcl_1_1_trajkovic_keypoint3_d.html#a88309e9dc62caf7fea6fb429603399b5">更多...</a><br /></td></tr>
<tr class="separator:a88309e9dc62caf7fea6fb429603399b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a447b8e60781b76ef43b51859624d40fe"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a447b8e60781b76ef43b51859624d40fe">getNumberOfThreads</a> () const</td></tr>
<tr class="separator:a447b8e60781b76ef43b51859624d40fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpcl_1_1_keypoint"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpcl_1_1_keypoint')"><img src="closed.png" alt="-"/>&#160;Public 成员函数 继承自 <a class="el" href="classpcl_1_1_keypoint.html">pcl::Keypoint&lt; PointInT, PointOutT &gt;</a></td></tr>
<tr class="memitem:ab968a8e4e03374f001f2ad32f71c19f6 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="ab968a8e4e03374f001f2ad32f71c19f6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>harrisCorner</b> (ImageType &amp;output, ImageType &amp;input, const float sigma_d, const float sigma_i, const float alpha, const float thresh)</td></tr>
<tr class="separator:ab968a8e4e03374f001f2ad32f71c19f6 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2093e733ffdbeec61011da572f7c1621 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a2093e733ffdbeec61011da572f7c1621"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>hessianBlob</b> (ImageType &amp;output, ImageType &amp;input, const float sigma, bool SCALE)</td></tr>
<tr class="separator:a2093e733ffdbeec61011da572f7c1621 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e50c05b60ac259df5c21e7710f93409 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a7e50c05b60ac259df5c21e7710f93409"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>hessianBlob</b> (ImageType &amp;output, ImageType &amp;input, const float start_scale, const float scaling_factor, const int num_scales)</td></tr>
<tr class="separator:a7e50c05b60ac259df5c21e7710f93409 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99462738157103f91e8bfe7075202f7f inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a99462738157103f91e8bfe7075202f7f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>imageElementMultiply</b> (ImageType &amp;output, ImageType &amp;input1, ImageType &amp;input2)</td></tr>
<tr class="separator:a99462738157103f91e8bfe7075202f7f inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06d5bf39feac19b1d5dfa0a3e87caea9 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a06d5bf39feac19b1d5dfa0a3e87caea9"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a06d5bf39feac19b1d5dfa0a3e87caea9">Keypoint</a> ()</td></tr>
<tr class="memdesc:a06d5bf39feac19b1d5dfa0a3e87caea9 inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor. <br /></td></tr>
<tr class="separator:a06d5bf39feac19b1d5dfa0a3e87caea9 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc3023e139444291b4d155553369b0bd inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="abc3023e139444291b4d155553369b0bd"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#abc3023e139444291b4d155553369b0bd">~Keypoint</a> ()</td></tr>
<tr class="memdesc:abc3023e139444291b4d155553369b0bd inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty destructor <br /></td></tr>
<tr class="separator:abc3023e139444291b4d155553369b0bd inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dbce2da2ea97dcb4f5635df33a129c9 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a9dbce2da2ea97dcb4f5635df33a129c9">setSearchSurface</a> (const PointCloudInConstPtr &amp;cloud)</td></tr>
<tr class="memdesc:a9dbce2da2ea97dcb4f5635df33a129c9 inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the input dataset that we need to estimate features at every point for.  <a href="classpcl_1_1_keypoint.html#a9dbce2da2ea97dcb4f5635df33a129c9">更多...</a><br /></td></tr>
<tr class="separator:a9dbce2da2ea97dcb4f5635df33a129c9 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7b3aa0078d09857ed7afbee6b00e07b inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="aa7b3aa0078d09857ed7afbee6b00e07b"></a>
PointCloudInConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#aa7b3aa0078d09857ed7afbee6b00e07b">getSearchSurface</a> ()</td></tr>
<tr class="memdesc:aa7b3aa0078d09857ed7afbee6b00e07b inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the surface point cloud dataset. <br /></td></tr>
<tr class="separator:aa7b3aa0078d09857ed7afbee6b00e07b inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a153d731738fd5966e169e26b61013689 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a153d731738fd5966e169e26b61013689">setSearchMethod</a> (const KdTreePtr &amp;tree)</td></tr>
<tr class="memdesc:a153d731738fd5966e169e26b61013689 inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the search object.  <a href="classpcl_1_1_keypoint.html#a153d731738fd5966e169e26b61013689">更多...</a><br /></td></tr>
<tr class="separator:a153d731738fd5966e169e26b61013689 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c5fa8a8d95367a21111efe0b197a3c9 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a9c5fa8a8d95367a21111efe0b197a3c9"></a>
KdTreePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a9c5fa8a8d95367a21111efe0b197a3c9">getSearchMethod</a> ()</td></tr>
<tr class="memdesc:a9c5fa8a8d95367a21111efe0b197a3c9 inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the search method used. <br /></td></tr>
<tr class="separator:a9c5fa8a8d95367a21111efe0b197a3c9 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addd331bafa986670ef416554728bd6a4 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="addd331bafa986670ef416554728bd6a4"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#addd331bafa986670ef416554728bd6a4">getSearchParameter</a> ()</td></tr>
<tr class="memdesc:addd331bafa986670ef416554728bd6a4 inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the internal search parameter. <br /></td></tr>
<tr class="separator:addd331bafa986670ef416554728bd6a4 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4de1c1a1545be786c12ec36fea4008df inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a4de1c1a1545be786c12ec36fea4008df">setKSearch</a> (int k)</td></tr>
<tr class="memdesc:a4de1c1a1545be786c12ec36fea4008df inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the number of k nearest neighbors to use for the feature estimation.  <a href="classpcl_1_1_keypoint.html#a4de1c1a1545be786c12ec36fea4008df">更多...</a><br /></td></tr>
<tr class="separator:a4de1c1a1545be786c12ec36fea4008df inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a337c89ee7ce0816b8a677b5d538592 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a9a337c89ee7ce0816b8a677b5d538592"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a9a337c89ee7ce0816b8a677b5d538592">getKSearch</a> ()</td></tr>
<tr class="memdesc:a9a337c89ee7ce0816b8a677b5d538592 inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the number of k nearest neighbors used for the feature estimation. <br /></td></tr>
<tr class="separator:a9a337c89ee7ce0816b8a677b5d538592 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb901dd8879ee9a34b3a87d1cb6d6a37 inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#acb901dd8879ee9a34b3a87d1cb6d6a37">setRadiusSearch</a> (double radius)</td></tr>
<tr class="memdesc:acb901dd8879ee9a34b3a87d1cb6d6a37 inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the sphere radius that is to be used for determining the nearest neighbors used for the key point detection  <a href="classpcl_1_1_keypoint.html#acb901dd8879ee9a34b3a87d1cb6d6a37">更多...</a><br /></td></tr>
<tr class="separator:acb901dd8879ee9a34b3a87d1cb6d6a37 inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b6fb2953dc9be88c74d95c8446937bb inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a9b6fb2953dc9be88c74d95c8446937bb"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a9b6fb2953dc9be88c74d95c8446937bb">getRadiusSearch</a> ()</td></tr>
<tr class="memdesc:a9b6fb2953dc9be88c74d95c8446937bb inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the sphere radius used for determining the neighbors. <br /></td></tr>
<tr class="separator:a9b6fb2953dc9be88c74d95c8446937bb inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ead3b82282115d4b7e400daee213c2d inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top">pcl::PointIndicesConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a3ead3b82282115d4b7e400daee213c2d">getKeypointsIndices</a> ()</td></tr>
<tr class="separator:a3ead3b82282115d4b7e400daee213c2d inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a046a7cd11598b06d2076da69a3100e4b inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a046a7cd11598b06d2076da69a3100e4b">compute</a> (<a class="el" href="classpcl_1_1_point_cloud.html">PointCloudOut</a> &amp;output)</td></tr>
<tr class="memdesc:a046a7cd11598b06d2076da69a3100e4b inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base method for key point detection for all points given in &lt;setInputCloud (), setIndices ()&gt; using the surface in setSearchSurface () and the spatial locator in setSearchMethod ()  <a href="classpcl_1_1_keypoint.html#a046a7cd11598b06d2076da69a3100e4b">更多...</a><br /></td></tr>
<tr class="separator:a046a7cd11598b06d2076da69a3100e4b inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa327f241d246cec23ca531261f60da3f inherit pub_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#aa327f241d246cec23ca531261f60da3f">searchForNeighbors</a> (int index, double parameter, std::vector&lt; int &gt; &amp;indices, std::vector&lt; float &gt; &amp;distances) const</td></tr>
<tr class="memdesc:aa327f241d246cec23ca531261f60da3f inherit pub_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Search for k-nearest neighbors using the spatial locator from <em>setSearchmethod</em>, and the given surface from <em>setSearchSurface</em>.  <a href="classpcl_1_1_keypoint.html#aa327f241d246cec23ca531261f60da3f">更多...</a><br /></td></tr>
<tr class="separator:aa327f241d246cec23ca531261f60da3f inherit pub_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Public 成员函数 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointInT &gt;</a></td></tr>
<tr class="memitem:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="af4fbc5eb005057f8a0fc6d60bde595df"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af4fbc5eb005057f8a0fc6d60bde595df">PCLBase</a> ()</td></tr>
<tr class="memdesc:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor. <br /></td></tr>
<tr class="separator:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a7a6dd7a91275d7737cf1b18005b47244"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a7a6dd7a91275d7737cf1b18005b47244">PCLBase</a> (const <a class="el" href="classpcl_1_1_p_c_l_base.html">PCLBase</a> &amp;base)</td></tr>
<tr class="memdesc:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <br /></td></tr>
<tr class="separator:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ad5d6846e98e59c37dcc3dc9958d53966"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ad5d6846e98e59c37dcc3dc9958d53966">~PCLBase</a> ()</td></tr>
<tr class="memdesc:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a1952d7101f3942bac3b69ed55c1ca7ea">setInputCloud</a> (const PointCloudConstPtr &amp;cloud)</td></tr>
<tr class="memdesc:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the input dataset  <a href="classpcl_1_1_p_c_l_base.html#a1952d7101f3942bac3b69ed55c1ca7ea">更多...</a><br /></td></tr>
<tr class="separator:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a8cd745c4f7a792212f4fc3720b9d46ea"></a>
PointCloudConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a8cd745c4f7a792212f4fc3720b9d46ea">getInputCloud</a> () const</td></tr>
<tr class="memdesc:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the input point cloud dataset. <br /></td></tr>
<tr class="separator:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ab219359de6eb34c9d51e2e976dd1a0d1">setIndices</a> (const IndicesPtr &amp;indices)</td></tr>
<tr class="memdesc:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#ab219359de6eb34c9d51e2e976dd1a0d1">更多...</a><br /></td></tr>
<tr class="separator:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a436c68c74b31e4dd00000adfbb11ca7c">setIndices</a> (const IndicesConstPtr &amp;indices)</td></tr>
<tr class="memdesc:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#a436c68c74b31e4dd00000adfbb11ca7c">更多...</a><br /></td></tr>
<tr class="separator:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af9cc90d8364ce968566f75800d3773ca">setIndices</a> (const PointIndicesConstPtr &amp;indices)</td></tr>
<tr class="memdesc:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#af9cc90d8364ce968566f75800d3773ca">更多...</a><br /></td></tr>
<tr class="separator:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a930c7a6375fdf65ff8cfdb4eb4a6d996">setIndices</a> (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols)</td></tr>
<tr class="memdesc:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the indices for the points laying within an interest region of the point cloud.  <a href="classpcl_1_1_p_c_l_base.html#a930c7a6375fdf65ff8cfdb4eb4a6d996">更多...</a><br /></td></tr>
<tr class="separator:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a058753dd4de73d3d0062fe2e452fba3c"></a>
IndicesPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a058753dd4de73d3d0062fe2e452fba3c">getIndices</a> ()</td></tr>
<tr class="memdesc:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the vector of indices used. <br /></td></tr>
<tr class="separator:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="acae187b37230758959572ceb1e6e2045"></a>
IndicesConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#acae187b37230758959572ceb1e6e2045">getIndices</a> () const</td></tr>
<tr class="memdesc:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the vector of indices used. <br /></td></tr>
<tr class="separator:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">const PointInT &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af7335fedb0af0930b9d1dedcb54ba201">operator[]</a> (size_t pos) const</td></tr>
<tr class="memdesc:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Override PointCloud operator[] to shorten code  <a href="classpcl_1_1_p_c_l_base.html#af7335fedb0af0930b9d1dedcb54ba201">更多...</a><br /></td></tr>
<tr class="separator:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected 成员函数</h2></td></tr>
<tr class="memitem:acb8db1146a7e071b4129d6bae48194ec"><td class="memItemLeft" align="right" valign="top"><a id="acb8db1146a7e071b4129d6bae48194ec"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>initCompute</b> ()</td></tr>
<tr class="separator:acb8db1146a7e071b4129d6bae48194ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0355b42f2f8d11259b292bee56c0a951"><td class="memItemLeft" align="right" valign="top"><a id="a0355b42f2f8d11259b292bee56c0a951"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a0355b42f2f8d11259b292bee56c0a951">detectKeypoints</a> (<a class="el" href="classpcl_1_1_point_cloud.html">PointCloudOut</a> &amp;output)</td></tr>
<tr class="memdesc:a0355b42f2f8d11259b292bee56c0a951"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract key point detection method. <br /></td></tr>
<tr class="separator:a0355b42f2f8d11259b292bee56c0a951"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpcl_1_1_keypoint"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpcl_1_1_keypoint')"><img src="closed.png" alt="-"/>&#160;Protected 成员函数 继承自 <a class="el" href="classpcl_1_1_keypoint.html">pcl::Keypoint&lt; PointInT, PointOutT &gt;</a></td></tr>
<tr class="memitem:af2dd9244731bfd903ce4aa73efb996eb inherit pro_methods_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="af2dd9244731bfd903ce4aa73efb996eb"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#af2dd9244731bfd903ce4aa73efb996eb">getClassName</a> () const</td></tr>
<tr class="memdesc:af2dd9244731bfd903ce4aa73efb996eb inherit pro_methods_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a string representation of the name of this class. <br /></td></tr>
<tr class="separator:af2dd9244731bfd903ce4aa73efb996eb inherit pro_methods_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Protected 成员函数 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointInT &gt;</a></td></tr>
<tr class="memitem:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#acceb20854934f4cf77e266eb5a44d4f0">initCompute</a> ()</td></tr>
<tr class="memdesc:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should get called before starting the actual computation.  <a href="classpcl_1_1_p_c_l_base.html#acceb20854934f4cf77e266eb5a44d4f0">更多...</a><br /></td></tr>
<tr class="separator:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="afc426c4eebb94b7734d4fa556bff1420"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#afc426c4eebb94b7734d4fa556bff1420">deinitCompute</a> ()</td></tr>
<tr class="memdesc:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should get called after finishing the actual computation. <br /></td></tr>
<tr class="separator:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private 成员函数</h2></td></tr>
<tr class="memitem:a3069b69235c901d56db5cd3f79b506d4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a3069b69235c901d56db5cd3f79b506d4">getNormalOrNull</a> (int i, int j, int &amp;counter) const</td></tr>
<tr class="separator:a3069b69235c901d56db5cd3f79b506d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a223471aea01e5cea2a6f891f27587aad"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a223471aea01e5cea2a6f891f27587aad">normalsDiff</a> (const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;a, const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;b) const</td></tr>
<tr class="separator:a223471aea01e5cea2a6f891f27587aad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab935e44f2edae3219e7b5256ea581026"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#ab935e44f2edae3219e7b5256ea581026">squaredNormalsDiff</a> (const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;a, const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;b) const</td></tr>
<tr class="separator:ab935e44f2edae3219e7b5256ea581026"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbf5f059583d0dcec3d92dd78a101520"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#abbf5f059583d0dcec3d92dd78a101520">greaterCornernessAtIndices</a> (int a, int b) const</td></tr>
<tr class="separator:abbf5f059583d0dcec3d92dd78a101520"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private 属性</h2></td></tr>
<tr class="memitem:aaf96521de2f5e0b67e7f5c482f9f6150"><td class="memItemLeft" align="right" valign="top"><a id="aaf96521de2f5e0b67e7f5c482f9f6150"></a>
ComputationMethod&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#aaf96521de2f5e0b67e7f5c482f9f6150">method_</a></td></tr>
<tr class="memdesc:aaf96521de2f5e0b67e7f5c482f9f6150"><td class="mdescLeft">&#160;</td><td class="mdescRight">computation method <br /></td></tr>
<tr class="separator:aaf96521de2f5e0b67e7f5c482f9f6150"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34130c74feb0af38673c59c3db944d65"><td class="memItemLeft" align="right" valign="top"><a id="a34130c74feb0af38673c59c3db944d65"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a34130c74feb0af38673c59c3db944d65">window_size_</a></td></tr>
<tr class="memdesc:a34130c74feb0af38673c59c3db944d65"><td class="mdescLeft">&#160;</td><td class="mdescRight">window size <br /></td></tr>
<tr class="separator:a34130c74feb0af38673c59c3db944d65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a67dc5856c7764a3e460009be781f8a"><td class="memItemLeft" align="right" valign="top"><a id="a2a67dc5856c7764a3e460009be781f8a"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a2a67dc5856c7764a3e460009be781f8a">half_window_size_</a></td></tr>
<tr class="memdesc:a2a67dc5856c7764a3e460009be781f8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">half window size <br /></td></tr>
<tr class="separator:a2a67dc5856c7764a3e460009be781f8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58662ec943a09c0ab522b3b8c727b66f"><td class="memItemLeft" align="right" valign="top"><a id="a58662ec943a09c0ab522b3b8c727b66f"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a58662ec943a09c0ab522b3b8c727b66f">first_threshold_</a></td></tr>
<tr class="memdesc:a58662ec943a09c0ab522b3b8c727b66f"><td class="mdescLeft">&#160;</td><td class="mdescRight">first threshold for quick rejection <br /></td></tr>
<tr class="separator:a58662ec943a09c0ab522b3b8c727b66f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b255295990724f3f034a7c95d54c4c9"><td class="memItemLeft" align="right" valign="top"><a id="a7b255295990724f3f034a7c95d54c4c9"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7b255295990724f3f034a7c95d54c4c9">second_threshold_</a></td></tr>
<tr class="memdesc:a7b255295990724f3f034a7c95d54c4c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">second threshold for corner evaluation <br /></td></tr>
<tr class="separator:a7b255295990724f3f034a7c95d54c4c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7e0a96abcfe69c3affbe966a9bd1bdb"><td class="memItemLeft" align="right" valign="top"><a id="ab7e0a96abcfe69c3affbe966a9bd1bdb"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#ab7e0a96abcfe69c3affbe966a9bd1bdb">threads_</a></td></tr>
<tr class="memdesc:ab7e0a96abcfe69c3affbe966a9bd1bdb"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of threads to be used <br /></td></tr>
<tr class="separator:ab7e0a96abcfe69c3affbe966a9bd1bdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e482bf9341115ae3472154b9cba048b"><td class="memItemLeft" align="right" valign="top"><a id="a7e482bf9341115ae3472154b9cba048b"></a>
NormalsConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7e482bf9341115ae3472154b9cba048b">normals_</a></td></tr>
<tr class="memdesc:a7e482bf9341115ae3472154b9cba048b"><td class="mdescLeft">&#160;</td><td class="mdescRight">point cloud normals <br /></td></tr>
<tr class="separator:a7e482bf9341115ae3472154b9cba048b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03c194f2f554234154517ba9ab499a5a"><td class="memItemLeft" align="right" valign="top"><a id="a03c194f2f554234154517ba9ab499a5a"></a>
<a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; float &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html#a03c194f2f554234154517ba9ab499a5a">response_</a></td></tr>
<tr class="memdesc:a03c194f2f554234154517ba9ab499a5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">point cloud response <br /></td></tr>
<tr class="separator:a03c194f2f554234154517ba9ab499a5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
额外继承的成员函数</h2></td></tr>
<tr class="inherit_header pro_attribs_classpcl_1_1_keypoint"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpcl_1_1_keypoint')"><img src="closed.png" alt="-"/>&#160;Protected 属性 继承自 <a class="el" href="classpcl_1_1_keypoint.html">pcl::Keypoint&lt; PointInT, PointOutT &gt;</a></td></tr>
<tr class="memitem:aef5710b81d66e6d429a9dfeb41d606ff inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="aef5710b81d66e6d429a9dfeb41d606ff"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#aef5710b81d66e6d429a9dfeb41d606ff">name_</a></td></tr>
<tr class="memdesc:aef5710b81d66e6d429a9dfeb41d606ff inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">The key point detection method's name. <br /></td></tr>
<tr class="separator:aef5710b81d66e6d429a9dfeb41d606ff inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2ee2830db93620925b82bf6b8ffea63 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="aa2ee2830db93620925b82bf6b8ffea63"></a>
SearchMethod&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#aa2ee2830db93620925b82bf6b8ffea63">search_method_</a></td></tr>
<tr class="memdesc:aa2ee2830db93620925b82bf6b8ffea63 inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">The search method template for indices. <br /></td></tr>
<tr class="separator:aa2ee2830db93620925b82bf6b8ffea63 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a642e18edc66cffd15266bf9e7bf20bec inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a642e18edc66cffd15266bf9e7bf20bec"></a>
SearchMethodSurface&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a642e18edc66cffd15266bf9e7bf20bec">search_method_surface_</a></td></tr>
<tr class="memdesc:a642e18edc66cffd15266bf9e7bf20bec inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">The search method template for points. <br /></td></tr>
<tr class="separator:a642e18edc66cffd15266bf9e7bf20bec inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1998c46514f3f8d8d7665f6b505ca389 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a1998c46514f3f8d8d7665f6b505ca389"></a>
PointCloudInConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a1998c46514f3f8d8d7665f6b505ca389">surface_</a></td></tr>
<tr class="memdesc:a1998c46514f3f8d8d7665f6b505ca389 inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">An input point cloud describing the surface that is to be used for nearest neighbors estimation. <br /></td></tr>
<tr class="separator:a1998c46514f3f8d8d7665f6b505ca389 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bca452f3813c88d994dba18d4a7a1c8 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a9bca452f3813c88d994dba18d4a7a1c8"></a>
KdTreePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a9bca452f3813c88d994dba18d4a7a1c8">tree_</a></td></tr>
<tr class="memdesc:a9bca452f3813c88d994dba18d4a7a1c8 inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">A pointer to the spatial search object. <br /></td></tr>
<tr class="separator:a9bca452f3813c88d994dba18d4a7a1c8 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a578368dcf8cacc6770aa5f7e7a306def inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a578368dcf8cacc6770aa5f7e7a306def"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a578368dcf8cacc6770aa5f7e7a306def">search_parameter_</a></td></tr>
<tr class="memdesc:a578368dcf8cacc6770aa5f7e7a306def inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">The actual search parameter (casted from either <em>search_radius_</em> or <em>k_</em>). <br /></td></tr>
<tr class="separator:a578368dcf8cacc6770aa5f7e7a306def inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bf7980bf7404eb9b5571afbbc2001f5 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a3bf7980bf7404eb9b5571afbbc2001f5"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a3bf7980bf7404eb9b5571afbbc2001f5">search_radius_</a></td></tr>
<tr class="memdesc:a3bf7980bf7404eb9b5571afbbc2001f5 inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">The nearest neighbors search radius for each point. <br /></td></tr>
<tr class="separator:a3bf7980bf7404eb9b5571afbbc2001f5 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93359dca5b099e843c3cf0d0db1c59e1 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="a93359dca5b099e843c3cf0d0db1c59e1"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#a93359dca5b099e843c3cf0d0db1c59e1">k_</a></td></tr>
<tr class="memdesc:a93359dca5b099e843c3cf0d0db1c59e1 inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">The number of K nearest neighbors to use for each point. <br /></td></tr>
<tr class="separator:a93359dca5b099e843c3cf0d0db1c59e1 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe8df9e1d66f449bc478cc06f062f209 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memItemLeft" align="right" valign="top"><a id="abe8df9e1d66f449bc478cc06f062f209"></a>
pcl::PointIndicesPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_keypoint.html#abe8df9e1d66f449bc478cc06f062f209">keypoints_indices_</a></td></tr>
<tr class="memdesc:abe8df9e1d66f449bc478cc06f062f209 inherit pro_attribs_classpcl_1_1_keypoint"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indices of the keypoints in the input cloud. <br /></td></tr>
<tr class="separator:abe8df9e1d66f449bc478cc06f062f209 inherit pro_attribs_classpcl_1_1_keypoint"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Protected 属性 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointInT &gt;</a></td></tr>
<tr class="memitem:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a09c70d8e06e3fb4f07903fe6f8d67869"></a>
PointCloudConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a></td></tr>
<tr class="memdesc:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">The input point cloud dataset. <br /></td></tr>
<tr class="separator:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="aaee847c8a517ebf365bad2cb182a6626"></a>
IndicesPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">indices_</a></td></tr>
<tr class="memdesc:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">A pointer to the vector of point indices to use. <br /></td></tr>
<tr class="separator:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ada1eadb824d34ca9206a86343d9760bb"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ada1eadb824d34ca9206a86343d9760bb">use_indices_</a></td></tr>
<tr class="memdesc:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to true if point indices are used. <br /></td></tr>
<tr class="separator:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="adadb0299f144528020ed558af6879662"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#adadb0299f144528020ed558af6879662">fake_indices_</a></td></tr>
<tr class="memdesc:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. <br /></td></tr>
<tr class="separator:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><h3>template&lt;typename PointInT, typename PointOutT, typename NormalT = pcl::Normal&gt;<br />
class pcl::TrajkovicKeypoint3D&lt; PointInT, PointOutT, NormalT &gt;</h3>

<p><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html" title="TrajkovicKeypoint3D implements Trajkovic and Hedley corner detector on point cloud using geometric in...">TrajkovicKeypoint3D</a> implements Trajkovic and Hedley corner detector on point cloud using geometric information. It uses first order statistics to find variation of normals. This work is part of Nizar Sallem PhD thesis. </p>
<dl class="section author"><dt>作者</dt><dd>Nizar Sallem </dd></dl>
</div><h2 class="groupheader">构造及析构函数说明</h2>
<a id="aefa386fd88159bfe1a148b970162d692"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aefa386fd88159bfe1a148b970162d692">&#9670;&nbsp;</a></span>TrajkovicKeypoint3D()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::<a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">TrajkovicKeypoint3D</a> </td>
          <td>(</td>
          <td class="paramtype">ComputationMethod&#160;</td>
          <td class="paramname"><em>method</em> = <code>FOUR_CORNERS</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>window_size</em> = <code>3</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>first_threshold</em> = <code>0.00046</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>second_threshold</em> = <code>0.03589</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Constructor </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">method</td><td>the method to be used to determine the corner responses </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">window_size</td><td></td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">first_threshold</td><td>the threshold used in the simple cornerness test. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">second_threshold</td><td>the threshold used to reject weak corners. </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        : <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#aaf96521de2f5e0b67e7f5c482f9f6150">method_</a> (method)</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        , <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a34130c74feb0af38673c59c3db944d65">window_size_</a> (window_size)</div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        , <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a58662ec943a09c0ab522b3b8c727b66f">first_threshold_</a> (first_threshold)</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        , <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7b255295990724f3f034a7c95d54c4c9">second_threshold_</a> (second_threshold)</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        , <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#ab7e0a96abcfe69c3affbe966a9bd1bdb">threads_</a> (1)</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;      {</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        <a class="code" href="classpcl_1_1_keypoint.html#aef5710b81d66e6d429a9dfeb41d606ff">name_</a> = <span class="stringliteral">&quot;TrajkovicKeypoint3D&quot;</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;      }</div>
<div class="ttc" id="aclasspcl_1_1_keypoint_html_aef5710b81d66e6d429a9dfeb41d606ff"><div class="ttname"><a href="classpcl_1_1_keypoint.html#aef5710b81d66e6d429a9dfeb41d606ff">pcl::Keypoint::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdoc">The key point detection method's name.</div><div class="ttdef"><b>Definition:</b> keypoint.h:173</div></div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_a34130c74feb0af38673c59c3db944d65"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#a34130c74feb0af38673c59c3db944d65">pcl::TrajkovicKeypoint3D::window_size_</a></div><div class="ttdeci">int window_size_</div><div class="ttdoc">window size</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:200</div></div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_a58662ec943a09c0ab522b3b8c727b66f"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#a58662ec943a09c0ab522b3b8c727b66f">pcl::TrajkovicKeypoint3D::first_threshold_</a></div><div class="ttdeci">float first_threshold_</div><div class="ttdoc">first threshold for quick rejection</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:204</div></div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_a7b255295990724f3f034a7c95d54c4c9"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#a7b255295990724f3f034a7c95d54c4c9">pcl::TrajkovicKeypoint3D::second_threshold_</a></div><div class="ttdeci">float second_threshold_</div><div class="ttdoc">second threshold for corner evaluation</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:206</div></div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_aaf96521de2f5e0b67e7f5c482f9f6150"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#aaf96521de2f5e0b67e7f5c482f9f6150">pcl::TrajkovicKeypoint3D::method_</a></div><div class="ttdeci">ComputationMethod method_</div><div class="ttdoc">computation method</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:198</div></div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_ab7e0a96abcfe69c3affbe966a9bd1bdb"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#ab7e0a96abcfe69c3affbe966a9bd1bdb">pcl::TrajkovicKeypoint3D::threads_</a></div><div class="ttdeci">unsigned int threads_</div><div class="ttdoc">number of threads to be used</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:208</div></div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">成员函数说明</h2>
<a id="a9c9a062f761214d152c4c36cb6160b37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c9a062f761214d152c4c36cb6160b37">&#9670;&nbsp;</a></span>getFirstThreshold()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getFirstThreshold </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>first threshold </dd></dl>
<div class="fragment"><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;{ <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a58662ec943a09c0ab522b3b8c727b66f">first_threshold_</a>); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a4d0b82ffc180ece57cc3d64cf42fd1cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d0b82ffc180ece57cc3d64cf42fd1cc">&#9670;&nbsp;</a></span>getMethod()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ComputationMethod <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getMethod </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>the computation method </dd></dl>
<div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;{ <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#aaf96521de2f5e0b67e7f5c482f9f6150">method_</a>); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a3069b69235c901d56db5cd3f79b506d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3069b69235c901d56db5cd3f79b506d4">&#9670;&nbsp;</a></span>getNormalOrNull()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structpcl_1_1_normal.html">NormalT</a>&amp; <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getNormalOrNull </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>j</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>counter</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Return a const reference to the normal at (i,j) if it is finite else return a reference to a null normal. If the returned normal is valid <em>counter</em> is incremented. </p>
<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;      {</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="structpcl_1_1_normal.html">NormalT</a> <span class="keyword">null</span>;</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <span class="keywordflow">if</span> (!isFinite ((*<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7e482bf9341115ae3472154b9cba048b">normals_</a>) (i,j))) <span class="keywordflow">return</span> (<span class="keyword">null</span>);</div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        ++counter;</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        <span class="keywordflow">return</span> ((*<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7e482bf9341115ae3472154b9cba048b">normals_</a>) (i,j));</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;      }</div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_a7e482bf9341115ae3472154b9cba048b"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#a7e482bf9341115ae3472154b9cba048b">pcl::TrajkovicKeypoint3D::normals_</a></div><div class="ttdeci">NormalsConstPtr normals_</div><div class="ttdoc">point cloud normals</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:210</div></div>
<div class="ttc" id="astructpcl_1_1_normal_html"><div class="ttname"><a href="structpcl_1_1_normal.html">pcl::Normal</a></div><div class="ttdoc">A point structure representing normal coordinates and the surface curvature estimate....</div><div class="ttdef"><b>Definition:</b> point_types.hpp:779</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a0bf8f3dad5c78f18578e676c72feee5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0bf8f3dad5c78f18578e676c72feee5c">&#9670;&nbsp;</a></span>getNormals()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getNormals </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>points normals as calculated or given </dd></dl>
<div class="fragment"><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;{ <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7e482bf9341115ae3472154b9cba048b">normals_</a>); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a447b8e60781b76ef43b51859624d40fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a447b8e60781b76ef43b51859624d40fe">&#9670;&nbsp;</a></span>getNumberOfThreads()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getNumberOfThreads </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>the number of threads </dd></dl>
<div class="fragment"><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;{ <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#ab7e0a96abcfe69c3affbe966a9bd1bdb">threads_</a>); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a69c6e0deea3bbe88dd4d2224d7ef42f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69c6e0deea3bbe88dd4d2224d7ef42f2">&#9670;&nbsp;</a></span>getSecondThreshold()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getSecondThreshold </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>second threshold </dd></dl>
<div class="fragment"><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;{ <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7b255295990724f3f034a7c95d54c4c9">second_threshold_</a>); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a895f9468fd37a316502e53c7ad2ba791"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a895f9468fd37a316502e53c7ad2ba791">&#9670;&nbsp;</a></span>getWindowSize()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getWindowSize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>window size i.e. window width or height </dd></dl>
<div class="fragment"><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;{ <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a34130c74feb0af38673c59c3db944d65">window_size_</a>); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="abbf5f059583d0dcec3d92dd78a101520"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abbf5f059583d0dcec3d92dd78a101520">&#9670;&nbsp;</a></span>greaterCornernessAtIndices()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::greaterCornernessAtIndices </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="classpcl_1_1_comparator.html" title="Comparator is the base class for comparators that compare two points given some function....">Comparator</a> for responses intensity </p><dl class="section return"><dt>返回</dt><dd>true if <em>response_</em> at index \aa is greater than response at index \ab </dd></dl>
<div class="fragment"><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;      {</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        <span class="keywordflow">return</span> (<a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a03c194f2f554234154517ba9ab499a5a">response_</a>-&gt;<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a> [a] &gt; <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a03c194f2f554234154517ba9ab499a5a">response_</a>-&gt;<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a> [b]);</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;      }</div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_af16a62638198313b9c093127c492c884"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">pcl::PointCloud::points</a></div><div class="ttdeci">std::vector&lt; PointT, Eigen::aligned_allocator&lt; PointT &gt; &gt; points</div><div class="ttdoc">The point data.</div><div class="ttdef"><b>Definition:</b> point_cloud.h:410</div></div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_a03c194f2f554234154517ba9ab499a5a"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#a03c194f2f554234154517ba9ab499a5a">pcl::TrajkovicKeypoint3D::response_</a></div><div class="ttdeci">pcl::PointCloud&lt; float &gt;::Ptr response_</div><div class="ttdoc">point cloud response</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:212</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a223471aea01e5cea2a6f891f27587aad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a223471aea01e5cea2a6f891f27587aad">&#9670;&nbsp;</a></span>normalsDiff()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::normalsDiff </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>difference of two normals vectors </dd></dl>
<div class="fragment"><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;      {</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        <span class="keywordtype">double</span> nx = a.normal_x; <span class="keywordtype">double</span> ny = a.normal_y; <span class="keywordtype">double</span> nz = a.normal_z;</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        <span class="keywordtype">double</span> mx = b.normal_x; <span class="keywordtype">double</span> my = b.normal_y; <span class="keywordtype">double</span> mz = b.normal_z;</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        <span class="keywordflow">return</span> (<span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span> (1.0 - (nx*mx + ny*my + nz*mz)));</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;      }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a28ea0a4dca5e3206d8dd94c9f8931f58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28ea0a4dca5e3206d8dd94c9f8931f58">&#9670;&nbsp;</a></span>setFirstThreshold()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setFirstThreshold </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>threshold</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>set the first_threshold to reject corners in the simple cornerness computation stage. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">threshold</td><td></td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;{ <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a58662ec943a09c0ab522b3b8c727b66f">first_threshold_</a>= threshold; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a4e13e945839333c59a9f44ade8639ed3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e13e945839333c59a9f44ade8639ed3">&#9670;&nbsp;</a></span>setMethod()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setMethod </td>
          <td>(</td>
          <td class="paramtype">ComputationMethod&#160;</td>
          <td class="paramname"><em>method</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>set the method of the response to be calculated. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">method</td><td>either 4 corners or 8 corners </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;{ <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#aaf96521de2f5e0b67e7f5c482f9f6150">method_</a> = method; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="adf53e0403fb49781e05f46c7e5be09a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf53e0403fb49781e05f46c7e5be09a2">&#9670;&nbsp;</a></span>setNormals()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setNormals </td>
          <td>(</td>
          <td class="paramtype">const NormalsConstPtr &amp;&#160;</td>
          <td class="paramname"><em>normals</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set normals if precalculated normals are available. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">normals</td><td></td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;{ <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7e482bf9341115ae3472154b9cba048b">normals_</a> = normals; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a88309e9dc62caf7fea6fb429603399b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88309e9dc62caf7fea6fb429603399b5">&#9670;&nbsp;</a></span>setNumberOfThreads()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setNumberOfThreads </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>nr_threads</em> = <code>0</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Initialize the scheduler and set the number of threads to use. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">nr_threads</td><td>the number of hardware threads to use, 0 for automatic. </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;{ <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#ab7e0a96abcfe69c3affbe966a9bd1bdb">threads_</a> = nr_threads; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aefcd429705495432dc069f449faabf5a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aefcd429705495432dc069f449faabf5a">&#9670;&nbsp;</a></span>setSecondThreshold()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setSecondThreshold </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>threshold</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>set the second threshold to reject corners in the final cornerness computation stage. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">threshold</td><td></td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;{ <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a7b255295990724f3f034a7c95d54c4c9">second_threshold_</a>= threshold; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab935e44f2edae3219e7b5256ea581026"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab935e44f2edae3219e7b5256ea581026">&#9670;&nbsp;</a></span>squaredNormalsDiff()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointInT , typename PointOutT , typename NormalT  = pcl::Normal&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float <a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">pcl::TrajkovicKeypoint3D</a>&lt; PointInT, PointOutT, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::squaredNormalsDiff </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &amp;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>返回</dt><dd>squared difference of two normals vectors </dd></dl>
<div class="fragment"><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;      {</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="keywordtype">float</span> diff = <a class="code" href="classpcl_1_1_trajkovic_keypoint3_d.html#a223471aea01e5cea2a6f891f27587aad">normalsDiff</a> (a,b);</div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <span class="keywordflow">return</span> (diff * diff);</div>
<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;      }</div>
<div class="ttc" id="aclasspcl_1_1_trajkovic_keypoint3_d_html_a223471aea01e5cea2a6f891f27587aad"><div class="ttname"><a href="classpcl_1_1_trajkovic_keypoint3_d.html#a223471aea01e5cea2a6f891f27587aad">pcl::TrajkovicKeypoint3D::normalsDiff</a></div><div class="ttdeci">float normalsDiff(const NormalT &amp;a, const NormalT &amp;b) const</div><div class="ttdef"><b>Definition:</b> trajkovic_3d.h:176</div></div>
</div><!-- fragment -->
</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>keypoints/include/pcl/keypoints/<a class="el" href="trajkovic__3d_8h_source.html">trajkovic_3d.h</a></li>
<li>keypoints/include/pcl/keypoints/impl/<a class="el" href="trajkovic__3d_8hpp_source.html">trajkovic_3d.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>pcl</b></li><li class="navelem"><a class="el" href="classpcl_1_1_trajkovic_keypoint3_d.html">TrajkovicKeypoint3D</a></li>
    <li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
